package tpo.service;

import com.github.pagehelper.PageInfo;
import dto.Dto;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
import pojo.BuyOrder;
import pojo.Journal;
import pojo.Pay_order;
import pojo.Receipt_order;
import pojo.finance.Day;
import pojo.finance.Fukuandan;
import pojo.finance.Kehuduizhang;
import pojo.finance.Zijinduizhang;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface Receipt_oreder_Service_consuner {

    Dto<PageInfo<Receipt_order>> allreceipt_order(@RequestBody Map<String,Object> map);

    Dto<List<Receipt_order>> allReceipt_order();

    Dto<Receipt_order> selectReceipt_order(@RequestParam(value = "code") String code);

    Dto<BigDecimal> selectallReceipt_ordermoney(@RequestParam(value = "code") String code);

    Dto addReceipt_order(Receipt_order receipt_order);

    Dto zuofei(@RequestBody Map<String,Object> map);

    Dto shenhe(@RequestBody Map<String,Object> map);

    Dto<PageInfo<Journal>> alljournal(@RequestBody Map<String,Object> map);

    Dto<PageInfo<Fukuandan>> allPay_order(@RequestBody Map<String, Object> map);

    Dto addPay_order(@RequestBody Pay_order pay_order);

    Dto fukuanzuofei(@RequestBody Map<String,Object> map);

    Dto selectpay_order(@RequestParam(value = "code") String code);

    Dto fukuanshenhe(@RequestBody Map<String,Object>map);

    Dto<PageInfo<Kehuduizhang>> selectusermoney(@RequestBody Map<String,Object> map);

    Dto<Kehuduizhang> selectusersum();

    Dto<Kehuduizhang> selectoneusersum(@RequestParam(value = "id") String id);

    Dto<PageInfo<BuyOrder>> selectoneuseralldan(@RequestBody Map<String,Object> map);

    Dto<PageInfo<Zijinduizhang>> selectdangtianzhang(@RequestBody Map<String,Object> map);

    /**用于资金账户明细*/
    Dto<PageInfo<Journal>> selectzijinmingxi(@RequestBody Map<String,Object> map);

    /**用于资金账户的7天内资金收支记录折线图*/
    Dto<List<Day>> zijinzhexiantu();

    /**根据code查询某一订单的所有收款单 */
    Dto<List<Receipt_order>> codeselectallreceipt(@RequestParam(value = "code") String code);

    /**根据code查询某一订单的所有付款单 */
    Dto<List<Pay_order>> codeselectallfukuandan(@RequestParam(value = "code") String code);

    /**用于查询状态为已完成状态的付款单*/
    Dto selectallokfukuandan(@RequestParam(value = "code")String code);

    /**修改付款单上传凭证*/
    Dto upPay_order(@RequestBody Map<String,Object> map);

}
